1. Field of the Invention
The invention relates generally to performing transactions on a network. More particularly, the invention relates to a system and method for controlling a transaction involving multiple service providers.
2. Background Information
The Internet and the World Wide Web, hereinafter referred to as the web, provide a viable medium for electronic commerce and on-line services, however current systems and methods for using the Internet and the Web are extremely limited. In particular, current uses are limited to either browse-only interactions or simple “deferred” purchases involving a single service provider.
FIG. 1 conceptually illustrates a prior art use 100 of the Internet and the web. A user 105 accesses a car dealer web server 155 associated with a car dealer 150 over the Internet 130 via a web browser 110. Web browser 110 is software that runs on a computer system and provides a simple user interface to allow access to web servers via the web. In particular, the user 105 may input a uniform resource locator (URL), such as http://www.cars.com, which the web browser 110 communicates to the Internet 130 and which corresponds to an IP address 120 that uniquely locates the car dealer web server 155 and a web page 160. The user 105 may view the web page 160 and then leave, which amounts to a simple browse-only interaction.
Alternatively, the user 105 may make a limited, deferred purchase of a car from the car dealer 150 and involving only the car dealer 150. For example, the user 105 may fill out a form on car dealer web page 160 and email the form to car dealer web server 155. After receiving the form, the car dealer web server 155 may perform some processing of the form, and then send it through a gateway 170 towards applications 175 that perform further purchase processing and read and write data 180 such as to a legacy database. The applications 175 and the data 180 are not directly connected to the Internet or the web and are not available to other entities connected to the Internet. Typically, the car dealer 150 alone may access the applications 175 and the data 180, and typically this is via a complicated and customized procedure. The actual purchase is deferred until the email is received, read by a person or system, and purchase processing is performed by a person or the applications 175 and data 180. Thus, the purchase is not performed in real-time and involves only the car dealer 150.
The user 105 may also select a bank hyperlink 165 embedded in web page 160. The bank hyperlink 165 causes the web browser 110 to connect to bank web server 192 presenting bank web page 194 via hyperlink address 165. This may allow the user 105 to browse bank web page 192 to obtain information about obtaining a loan, however, the association between the car dealer 150 and the bank 190 is a limited one involving the car dealer 150 only providing easy access to bank information via the bank hyperlink 165. Unfortunately, there is no cooperation or interaction between the car dealer 150 and the bank 190 besides the hyperlink 165. In fact, the hyperlink 165 disconnects the user from car dealer web server 155 and web page 160 and connects the user with bank web server 192 and bank web page 194. This lack of cooperation, control, and interaction greatly limits the services that may be provided by the web.
FIG. 2 conceptually illustrates a user 205 and a bank web server 250 interacting dynamically through the use of Common Gateway Interface (CGI) applications. The user 205 accesses the bank web server 250 via a web browser 210 to attempt to obtain information on a checking account and a loan account. The bank web server 250 includes a CGI interface 252 to a checking application 254 and a CGI interface 256 to a loan application 258 that interact with checking data 272 and loan data, respectively, in a database 270. CGI allows the bank web server 250 to transfer data to the checking application 254 and the loan application 258 that can then perform processing on the data. By way of example, the user 205 may enter a checking account identification number in an HTML form provided by the bank web server 250, and the server 250 may communicate the checking account identification number to checking application 254 that uses CGI to look up the user checking account in the database 270 and format the checking account data 272 as an HTML page that may be presented to the user 205.
However, the CGI interaction is severely limited because each CGI application must be customized for a particular type of application or service. That is, different CGI application would have to be created for each service provided by the bank. For this reason, creating and managing individual CGI scripts for each service is not a viable solution for merchants with a large number of services.
As the Web expands and electronic commerce becomes more desirable, the need increases for robust, real-time, bi-directional transactional capabilities on the Web. A true real-time, bi-directional transaction would allow a user to connect to a variety of services on the web, and perform real-time transactions on those services. For example, although user 100 can browse car dealer Web page 105 today, the user cannot purchase the car, negotiate a car loan or perform other types of real-time, two-way transactions that he can perform with a live salesperson at the car dealership.
Ideally, user 100 in FIG. 1A would be able to access car dealer Web page 105, select specific transactions that he desires to perform, such as purchase a car, and perform the purchase in real-time, with two-way interaction capabilities. CGI applications provide user 100 with a limited ability for two-way interaction with car dealer Web page 105, but due to the lack of interaction and management between the car dealer and the bank, he will not be able to obtain a loan and complete the purchase of the car via a CGI application. The ability to complete robust real-time, two-way transactions is thus not truly available on the web today.
In order to provide sophisticated and useful services over the web, it is desirable to control and manage cooperation and interaction among a plurality of service providers that each contribute to the transaction. This goal is constrained by the prior art systems and methods for using the Internet, which do not control or manage multi-service provider transactions and which do not permit sophisticated and useful joint service offerings.